TPT-4298: Added PR title checking to lint workflow and new clean up release notes workflow#913
Conversation
There was a problem hiding this comment.
Pull request overview
Adds GitHub Actions automation to enforce Jira-prefixed PR titles during CI and to post-process published release notes by removing Jira ticket prefixes from generated changelog entries.
Changes:
- Add a PR title validation step to the
lint-tidyCI job to enforceTPT-1234:prefix format. - Introduce a new
Clean Release Notesworkflow that runs on release publish and updates the release body to removeTPT-####:prefixes.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
.github/workflows/ci.yml |
Adds a CI step to validate PR title format before lint/tidy runs. |
.github/workflows/clean-release-notes.yml |
Adds a workflow to rewrite published release notes by stripping Jira-style prefixes. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
mgwoj
left a comment
There was a problem hiding this comment.
One suggestion IMHO should be applied
yec-akamai
left a comment
There was a problem hiding this comment.
LGTM. Nice work adding the lint!
|
Just realized that this will cause lint failures for PRs opened by dependabot. Do we want to add an exclusion for the requirement for PRs with titles that begin with |
There was a problem hiding this comment.
Pull request overview
Adds CI enforcement for Jira-style PR titles and introduces an automated post-publish workflow to strip ticket prefixes from GitHub release notes.
Changes:
- Add a lint workflow step that fails PR runs unless the PR title matches
TPT-1234: ...(allowing optional space after:). - Add a new
release.publishedworkflow that rewrites release notes to removeTPT-####:prefixes.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| .github/workflows/ci.yml | Adds PR-title validation step to the lint job using gh pr view to get the latest title. |
| .github/workflows/clean-release-notes.yml | Adds a workflow to clean published release notes by removing TPT-####: prefixes and updating the release body. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
Oh it also reminds me that it can fail for PRs raised by external teams. Their PRs probably won't have a proper TPT number for the title either |
Good point. I don't have as clean of a solution in mind for this case. Any idea on a solution for this? We can maybe check if the author is part of the DX GitHub team and if it is require the TPT in the title, otherwise skip the check? |
There was a problem hiding this comment.
Pull request overview
This PR updates GitHub Actions automation to (1) enforce Jira-style ticket prefixes on PR titles during CI linting, and (2) post-process published release notes to remove TPT-####: prefixes.
Changes:
- Add a PR-title validation step to the
lint-tidyjob in CI. - Add a new workflow that runs on
release.publishedto clean ticket prefixes from release bodies.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| .github/workflows/clean-release-notes.yml | New workflow to strip TPT-####: prefixes from published release notes and update the release via API. |
| .github/workflows/ci.yml | Adds PR title validation logic (with label/bot exemptions) and introduces job-level token permissions. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
c0845ac to
7f84ce8
Compare
7f84ce8 to
827fd65
Compare
📝 Description
Added a new step in the lint workflow to fail if the PR title does not begin with "TPT-1234:" (works with and without a space between the colon and description).
Also added a new workflow to run upon release publish to edit the release notes to remove the Jira ticket ID prefixes from patch notes.
✔️ How to Test
To test the PR title enforcement, edit the title of this PR to remove the Jira ticket ID and rerun the lint job. It should fail immediately. Then, add the Jira ticket ID back to the PR title and it should pass.
To test the release note cleanup job, check out this PR locally and merge it into your fork. Then, cut a test release to your fork. Upon generating the release notes, the TPT-**** prefix will still be there. Publish the release and verify that the new workflow is triggered. After it finishes, confirm that the release notes were correctly updated.